package com.lin.sms.util;

import java.security.MessageDigest;

/**
 * 该类作用: 存放程序中需要用到的工具方法 读取Data数据方法: readUserData(), readScoresData()
 * 读取data.txt文件数据 提供List<String> errorLine 存放数据缺失的行 增加容错判断, 如果读取未到到达预期,会选择舍弃数据,
 * 并添加到错误数据存放的容器, 增加程序的鲁棒性 判断Name,Password是否正确的方法: nameTrue(), passwordTure
 * 界面交互方法: nameInput(), passwordInput(), intefeacePrint()
 * 
 * @author jack lin
 *
 */
public class Utils {


	
// ==================================================================
// =============以下是判断Name,Password是否正确相关方法===============
	
	/**
	 * 方法:将传进来的String 类 password 转换成经"MD5"加密后的字符串
	 * @return
	 * @throws Exception
	 */
	public static String passwordTransform(String passwordInput) throws Exception {
		byte[] digestByte;
		byte[] passwordByte = passwordInput.getBytes();
		// 指定加密算法为"MD5"
		MessageDigest digest = MessageDigest.getInstance("MD5");
		// 进行加密
		digest.update(passwordByte);
		//digest.digest(passwordByte);
		digestByte = digest.digest();
		// 把字节转换成String
		String str = "";
		String str16;
		for (int i = 0; i < digestByte.length; i++) {
			str16 = Integer.toHexString(0xFF & digestByte[i]);
			if (str16.length() == 1) {
				str = str + "0" + str16;
			} else {
				str = str + str16;
			}
		}
		return str;//返回加密后的String
	}
}
